全平台网络路径跟踪工具全面指南 – 涵盖Windows/Linux/MacOS/ios/Android

您所在的位置:网站首页 安卓 路由追踪网站 全平台网络路径跟踪工具全面指南 – 涵盖Windows/Linux/MacOS/ios/Android

全平台网络路径跟踪工具全面指南 – 涵盖Windows/Linux/MacOS/ios/Android

2024-07-05 12:19| 来源: 网络整理| 查看: 265

目录 展开 一、前言 二、安卓端 1.PingTools 1)安装 2)使用 2.网络万用表 1)安装 2)使用 3.Termux 1)安装 2)使用 ①禁止反向解析(-n) ②使用ICMP协议跟踪(-I) 三、ios端 1.Best NetTools 1)traceroute 2)mtr 2.iNetTools 3.Network Ping Lite 四、Windows端 1.tracert 2.WinMtr 1)安装 2)使用 3.tracetcp 1)安装 2)使用 ①使用TCP指定端口进行路径跟踪 ②指定探测次数 4.BestTrace 1)安装 2)使用 ①traceroute跟踪 ②MTR跟踪 五、Linux端 1.traceroute 1)不加参数,默认使用UDP跟踪 2)使用ICMP跟踪(-I) 3)使用TCP端口跟踪(-T/–tcp,-p) 4)使用UDP端口跟踪(-U/–udp,-p) 2.mtr 1)禁止反向解析(-n) 2)输出结果(-r) 3)指定TCP端口跟踪(-T/–tcp,-P) 4)指定UDP端口跟踪(-U/–udp,-P) 3.nexttrace 六、MacOS端 1.mtr 1)安装 2)使用 ①禁止反向解析(-n) ②输出统计结果(-r) ③指定TCP端口跟踪(–tcp,–port) ④指定TCP端口跟踪(–udp,–port) 2.traceroute 1)不加任何参数 2)指定TCP端口跟踪 3)指定UDP端口跟踪 一、前言

对于一些网络排障场景,需要借助各类网络排障工具来做一些基础类信息排障和信息收集,本文将从多平台讲述各类网络排障工具的安装及使用方法。

此文将会手机各大平台的主流网络探测工具,如果你对探测原理比较感兴趣,可以查阅笔者的此篇文章。

在测试过程中某些节点可能会返回*号,这是正常的,mtr、traceroute等路径跟踪工具都是根据递增TTL,来拿到每个沿途节点返回的Time-to-live exceeded(TTL耗尽,超过生存时间),从而在IP头部中拿到节点的IP地址;

除非此网关节点不响应任何信息(包括TTL耗尽),则用*表示,响应*并不代表节点不通,路由节点有QoS策略,对于优先级低的协议可以选择响应或者直接DROP,但并不影响它往后给你转发,只要TTL是够的依然会给你查路由转发,因此只需要关注最后一跳的质量。

二、安卓端 1.PingTools

PingTools为安卓端比较常见的网络探测工具,支持traceroute路由跟踪、ping、端口扫描、whois查询等功能。

1)安装

在各手机厂商的应用市场基本可以搜索到,如果无法搜索到,可以在此下载。

2)使用

以路由跟踪为例,来到路由跟踪界面,点击右上角的设置选项:

模式可选UDP、ICMP,默认UDP模式,按需选择,并勾选“不解析主机名称”,防止IP被解析成域名。

保存后,trace到百度的域名为例:

如果是IP则填写IP即可,中间节点未响应并不表示真正意义上的超时,中间路由节点对于ICMP/UDP的QoS优先级不高或者节点本身禁ping状态,即使是通过TTL递增来发ICMP/UDP探测,对端如果静默不做任何TTL耗尽的响应,则会表现为未响应,但并不影响节点转发数据,因此只要看最新的跳数即可。

如上图,最新跳数为18,IP为:39.156.66.10,我们trace解析到的也是这个IP,说明已经到达目的端。

如果想显示更多中间节点提升准确率,可以尝试在设置里面把Ping次数设置高一点(一般2-3次就够)。

2.网络万用表 1)安装

在各手机厂商的应用市场基本可以搜索到,如果无法搜索到,可以在此下载。

主界面如下,支持MTR、Traceroute、端口扫描、Ping探测等主流功能。

2)使用

以mtr和traceroute为例。

mtr:

traceroute:

经过的节点以及对应的域名都会展示。

3.Termux

前两种在安卓端已经基本够用,如果需要命令行版本,那么可以尝试下termux。

下载链接:https://github.com/termux/termux-app/releases/tag/v0.118.0

1)安装

GUI选择源:termux-change-repo

安装root源:

pkg install root-repo

安装traceroute:

pkg install traceroute 2)使用 ①禁止反向解析(-n) traceroute -n # -n 禁止将IP反解成域名

默认使用UDP协议跟踪。

②使用ICMP协议跟踪(-I)

使用ICMP协议跟踪,则可以使用-I(大写的i)参数:

traceroute -n -I

一次没回显,或者很多*****号可以多尝试几次:

带端口的测试需要root权限,不然无法有效进行TCP带端口的跟踪:

所以手机端在非root的情况下几乎没有任何APP能够实现带端口的trace。

三、ios端

以下ios端的路径跟踪工具全部在App Store免费下载,因此只介绍用法。

1.Best NetTools 1)traceroute

输入对端主机后,执行traceroute:

2)mtr

同理,输入目的主机后,执行MTR路径跟踪,将以ICMP协议进行路径跟踪:

2.iNetTools

选择路由轨迹功能,输入目的服务器即可:

3.Network Ping Lite

以traceroute为例,输入目的主机后Start即可:

四、Windows端 1.tracert

windows自带的路由追踪命令,打开DOS窗口后,直接执行即可

tracert -d # -d禁止反向解析

2.WinMtr 1)安装

为数不多的windows下可视化的路径追踪工具。

可在官网下载:http://winmtr.net/WinMTR-v092.zip

如无法打开,可点此链接下载,解压后即可运行。

2)使用

主界面参数说明:

选项这里只需要把反向解析的勾选去掉后,其它参数保持默认即可。

探测百度为例:

丢包指标只看最后一跳的Loss%即可,显示为0说明没有丢包。

3.tracetcp 1)安装

tracetcp:https://github.com/0xcafed00d/tracetcp/releases,如无法打开,可以[点此下载](https://ask.qcloudimg.com/draft/1155328/de8l0ceo2g.zip),或者[点此下载](https://data.linux-code.com/?dir=filelist/Software/tracetcp)。

winpcap(依赖环境,必须安装):https://www.winpcap.org/install/bin/WinPcap_4_1_3.exe,如无法打开,可[点此下载](https://data.linux-code.com/?dir=filelist/Software/tracetcp)。

winpcap双击安装,tracetcp解压即可。

解压后,在文件路径下,输入cmd回车:

即可打开DOS窗口,此路径下可直接调用tracetcp命令:

当然你把它解压后放到windows的环境变量目录(比如C:/Windows/system32)下,之后管理员身份运行cmd也能直接使用tracetcp,二者选其一即可。

2)使用

使用tracetcp -?帮助命令,可以看到各个参数含义以及示例:

Examples: tracetcp www.microsoft.com:80 -m 60 tracetcp post.sponge.com:smtp tracetcp 192.168.0.1 -n -t 500

这里只讲述带端口的TCP路径跟踪,其它用法根据参数说明使用即可。

①使用TCP指定端口进行路径跟踪 tracetcp : -n # -n禁止反向解析,-n要加在后面,加在前面会报错

②指定探测次数

-p参数可以指定每个节点的探测次数,不指定默认为3次,比如指定5次可以是:

tracetcp : -n -p 5

4.BestTrace 1)安装

下载链接:https://www.ipip.net/product/client.html

双击安装即可。

2)使用 ①traceroute跟踪

以百度为例,目的主机如果填写的是域名并且返回了多个解析记录,会让你选择其中一个进行路径跟踪:

经过的路由节点的IP归属地信息需要去官网申请Token才能使用,无此类需求可忽略。

带端口的跟踪,只支持勾选TCP(80端口,IPv4),不支持指定其它协议和端口:

②MTR跟踪

打开Best Trace主界面,点击MTR:

填写目的主机后即可开始:

五、Linux端 1.traceroute 1)不加参数,默认使用UDP跟踪 traceroute

加上 -n 参数可禁止反向解析,防止将IP反解成域名。

2)使用ICMP跟踪(-I)

加上-I(大写i)参数,则通过ping请求来探测:

traceroute -I

3)使用TCP端口跟踪(-T/–tcp,-p)

-T或者–tcp指定协议为tcp,-p指定端口,-n禁止反解:

traceroute -n -T -p

4)使用UDP端口跟踪(-U/–udp,-p)

-U或–udp指定协议为udp,-p指定端口,-n禁止反解:

traceroute -n -U -p 2.mtr 1)禁止反向解析(-n) mtr -n

2)输出结果(-r)

-r参数生成最终的结果,默认只探测10个包,结束后输出报告:

mtr -n

如要指定包量,可以加上-c参数,比如探测100个包后输出报告:

mtr -nr -c 100

3)指定TCP端口跟踪(-T/–tcp,-P)

比如指定百度的443端口进行跟踪,并且输出报告:

mtr -T -P 443 -nr www.baidu.com 4)指定UDP端口跟踪(-U/–udp,-P)

同理,指定UDP端口跟踪,可以是:

mtr -U -P 80 -nr www.baidu.com 3.nexttrace

基于Golang开发的开源可视化路径跟踪工具,nexttrace的详细介绍,可参考笔者此篇文章。

六、MacOS端 1.mtr 1)安装 brew install mtr

如果macOS没有安装brew命令,则需要先提前安装下brew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 2)使用 ①禁止反向解析(-n) sudo mtr -n

没有指定协议,默认使用ICMP进行ping探测。

②输出统计结果(-r)

-r参数生成最终的结果,默认只探测10个包,结束后会输出报告:

sudo mtr -nr

③指定TCP端口跟踪(–tcp,–port)

比如跟踪80端口:

sudo mtr --tcp --port 80 -nr

④指定TCP端口跟踪(–udp,–port)

比如跟踪udp 53端口:

mtr --udp -port 53 -nr

2.traceroute

无需安装,MacOS自带的工具。

1)不加任何参数

不加参数默认用UDP探测:

traceroute

2)指定TCP端口跟踪

比如跟踪TCP 443端口:

traceroute -P tcp -p 443 3)指定UDP端口跟踪

比如跟踪UDP 53端口:

traceroute -P udp -p 53


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3